home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FM Towns: Free Software Collection 9
/
FM Towns Free Software Collection 9.iso
/
taropyon
/
he386
/
he386.doc
< prev
next >
Wrap
Text File
|
1994-11-16
|
14KB
|
315 lines
**************************************************************************
HE386 ver.3.01 取扱説明書
**************************************************************************
HE386 は,テキストファイル中に書かれているMML (Music Macro Language)を
元にスタンダードMIDIファイル形式の音楽演奏データを作る出すツールです。
**************************************************************************
☆ HE386 の特徴
**************************************************************************
・スタンダードMIDIファイルを作成
HE386 はテキストファイルして作成されたデータファイルから,スタンダード
MIDIファイル形式の演奏データファイルを作成します。
MIDIがサポートするほとんどすべての演奏情報をきめ細かく指定することができ
,4分音符の分解能は 48~9600 まで対応しています。
・MML の常識を打ち破る超強力スペック
トラックやパート,マクロ等,ほとんどの設定はメモリの許すかぎり無制限に使
用できます。
通常の設定を行う「セッタ」,設定値にオフセットを加える「オフセッタ」,局
所的に設定を変更する「ピンセッタ」の3系統の設定コマンドにより,複雑な設定
を簡単に管理しまとめることができます。
数値指定には,相対値/パーセンテージ/ランダムといった様々な指定ができま
す。
・C言語ライクなインタプリタCCI を搭載
HE386 にはC言語ライクなインタプリタCCI が搭載されています。
CCI を使えばユーザーがMML に命令を追加することができます。
標準でGS音源を制御する命令を組み込んでいます。
**************************************************************************
☆ 使用,転載,再配付について
**************************************************************************
このプログラムの著作権は作者が保持しています。
以下の条件に従って自由に使用してください。
1. 著作権表示を変更しないこと。
2. このプログラムを使用したことによって生じた損害はまったく保証し
ない。
3. 作者はこのプログラムに不備があっても,それを訂正する義務を負わ
ない。
4. 収録されているすべてのファイルを一括して配付すること。
感想・障害報告等,作者への連絡は,
NIFTY-Serve ID:PAH01170
まで,願いします。
電子メールでのお問い合わせは返事が遅れたり,あるいは返信のメールが行かな
いこともありますので,予めご了承ください。
転載,再配付については作者の許諾を得る必要はありません。
**************************************************************************
☆ HE386 の起動と使い方
**************************************************************************
HE386 はコマンドモードまたは,HEwin (ver.1.01b 以降)やEDIAから使うこと
ができます。
ここではコマンドモードからは,RUN386.EXEを使い,
RUN386 HE386P <MMLファイル名>
とします。
MML ファイル名は,拡張子.MMLを持つテキストファイルとします(パラメータ指
定時には拡張子.MMLは省略できます)。
たとえば,MUSIC.MML をコンパイルする場合は,
RUN386 HE386P MUSIC
とします。コンパイルが成功すれば演奏データファイルMUSIC.MID ができているは
ずです。
**************************************************************************
☆ HEwin /EDIAからHE386 を使う
**************************************************************************
HE386 はHEwin またはEDIAのテキストエディタから呼び出して使うこともできま
す。
本バージョンのHE386 を呼び出すことができるのは,
HEwin … ver.1.02b edition #01
EDIA … ver.1.01b edition #02
のものに限られます。
これら以外のバージョンのHEwin/EDIAからHE386 を使っても,正常に動作しない
可能性があります。
● HEwin ver.1.02b edition #01 (天晴CD Vol.1収録)
天晴CD Vol.1に用意されているインストーラを使ってHEwin とHE386 をインスト
ールすると,自動的にHEwin からHE386 を使う環境が整います。
手動で環境を整える場合は,HE386P.EXPが格納されているディレクトリを,HEwi
n のDOS コンソール,[SETUP] メニュー配下の「EXP search path 」(項目/ボタ
ン)で指定してください。HE386P.EXPがHEWIN.EXP と同じディレクトリに格納され
ている場合は,[SETUP] メニュー配下の「EXP search path 」(項目/ボタン)は
使う必要ありません。
HEwin からコンパイルするときは,MML が書かれているテキストファイルを編集
状態にして,HEwin のテキストエディタ[MENU4]メニュー配下の「MML Compile」(
項目/ボタン)を実行し,そこから「Compile 」(項目/ボタン)を選択してくだ
さい。
HE386 には編集中のファイル名が渡されるだけですので,コンパイルしたいテキ
ストファイルはあらかじめファイルに保存されている必要があります。
HE386 でのコンパイルが終了し,編集中のテキストファイルのファイル名の拡張
子を.MIDに変更したファイル名と同名のファイルが存在すれば,それを演奏データ
ファイルとみなして演奏します。
演奏は,コンパイルに失敗してもファイルが存在すれば行われます。
● EDIA ver.1.01b edition #02 (天晴CD Vol.1収録)
天晴CD Vol.1に用意されているインストーラを使ってEDIAとHE386 をインストー
ルすると,自動的にEDIAからHE386 を使う環境が整います。
手動で環境を整える場合は,HE386P.EXPが格納されているディレクトリを,EDIA
の[MENU4] メニュー配下の「EXP search path 」(項目/ボタン)で指定してくだ
さい。HE386P.EXPがEDIA.EXPと同じディレクトリに格納されている場合は,[MENU4]
メニュー配下の「EXP search path 」(項目/ボタン)で指定する必要はありませ
ん。
EDIAからコンパイルするときは,MML が書かれているテキストファイルを編集状
態にして,[MENU4]配下の「MML Compile」(項目/ボタン)を実行し,そこから「
Compile 」(項目/ボタン)を選択してください。
HE386 には編集中のファイル名が渡されるだけですので,コンパイルしたいテキ
ストファイルはあらかじめファイルに保存されている必要があります。
HE386 でのコンパイルが終了し,編集中のテキストファイルのファイル名の拡張
子を.MIDに変更したファイル名と同名のファイルが存在すれば,それを演奏データ
ファイルとみなして演奏します。
演奏は,コンパイルに失敗してもファイルが存在すれば行われます。
**************************************************************************
☆ MML について,
**************************************************************************
HE386 はテキストファイルとして作成されたMML ソースファイルを元に,スタン
ダードMIDIファイル形式の演奏データを作成するツールです。
スタンダードMIDIファイルは,基本的にはMIDIメッセージ(MIDI規格の演奏情報
)に時間情報が追加された構成になっています。
HE386 を使いこなすためには,MIDIメッセージについてある程度知っておいたほ
うがいいでしょう。
●コンパイル動作概要
HE386 は次のような処理を経て演奏データファイルを作成します。
(1) ソースファイルのオープン
(2) ソースファイルの読み込み
(3) プリプロセッサ処理
(4) 演奏データの作成
(5) 最適化
(6) 演奏データをファイルに出力
(2) から(4) は,ソースファイルの1行単位に処理が行われ,入力行がなくな
るまで繰り返し実行されます。
演奏データはいったんメモリ上に作成され,演奏データの作成が終わると無駄
な演奏データを取り除くため (5)の最適化が行われます。
最後に演奏データをファイルに書き出します。
(3) のプリプロセッサ処理というのは,マクロ展開や別ファイルの取り込みを
行う,入力行に対する一種の文字列変換操作です。
HE386 のプリプロセッサは,マクロ展開,#ifdef~#else~#endif による条件
付き範囲指定,#includeによる別ファイルの取り込み等が行えます。
特殊なプリプロセッサ処理として,正弦波や2次関数に従って数値が連続的に変
化するようなコマンドパラメータを作りだすことができます。
CCI による命令の拡張はプリプロセッサ処理の段階で行われます。
●トラックとパートに関して,
HE386 には,パート単位に設定を行うパート系コマンド,トラック単位に設定を
行うトラック系コマンドの2系統のコマンドが用意されています。
トラックは演奏データ,つまりスタンダードMIDIファイルを構成する単位です。
トラックには(基本的には)楽器一台分の演奏情報が格納され,演奏データは複数
のトラックによって構成されます。
パートはトラックを構成するMML データの構成単位です。複数のパートを組み合
わせてトラックが構成されます。
図で表すと以下のような構成となります。
------------------------------
パート トラック 演奏データ
------------------------------
制御パート ------+
制御トラック --------+
|
ピアノ・パート1 --+ |
ピアノ・パート2 --+ |
ピアノ・パート3 --+ |
ピアノ・パート4 --+ |
ピアノ・トラック ----+
|
ギター・パート1 --+ |
ギター・パート2 --+ |
ギター・パート3 --+ |
ギター・トラック ----+
|
リズム・パート1 --+ |
リズム・パート2 --+ |
リズム・パート3 --+ |
リズム・トラック ----+
シーケンスデータ
------------------------------
ここでの「ピアノ・トラック」というのはピアノの演奏情報を格納するトラック
という意味です。
パート系コマンドとトラック系コマンドはうまく使い分けて演奏データを作成し
てください。
たとえば,トラック系コマンドはトラック内の演奏データすべてに影響を及ぼす
設定を行うために使い,パート系コマンドは局所的(ある小節の中だけとか)な設
定に用いるといった使い分け方があります。
●期待通りに演奏データが作れない場合は,
入力したMML の通りに演奏されない場合は,演奏データをダンプ表示して確認し
てください。ダンプ表示ではトラック毎のMIDI情報をすべて確認することができま
す。
HE386 起動時のオプションパラメータに,-dumpMsgを指定すると出力される演奏
データを確認することができます。
このダンプ表示をファイルに保存したい場合は,以下のオプションパラメータを
付け加えてください。
-dumpMsg -msgOut <ファイル名>
画面にダンプ表示を行う必要ないという場合は,以下のオプションパラメータを
付け加えてください。
-cnsMsgIgn -dumpMsg -msgOut <ファイル名>
ダンプ表示は曲が長いと膨大な大きさになるので(ダンプ表示のファイルサイズ
は数Mを越えるときがあります),確認したい箇所だけをコンパイルして表示する
ようにしたほうがいいでしょう。
**************************************************************************
☆ High-EUP Compiler 系譜
**************************************************************************
┌───────────┬─────┬─────┬──────────┐
│名称 │バージョン │実行ファイル名│その他 │
├───────────┼─────┼─────┼──────────┤
│High-EUP Compiler │ver.1.01 │HE.EXE │MS-DOS汎用 │
├───────────┼─────┼─────┼──────────┤
│386|High-EUP Compiler │ver.1.02 │HE386.EXP │DOS-Extender汎用 │
│386|High-EUP Compiler │ver.1.03 │HE386.EXP │DOS-Extender汎用 │
├───────────┼─────┼─────┼──────────┤
│386|High-EUP Compiler │ver.2.01 │HEAT.EXP │HEat内蔵タイプ │
├───────────┼─────┼─────┼──────────┤
│386|High-EUP Compiler │ver.3.01 │HE386P.EXP│TownsOS用スタンドアローン │
└───────────┴─────┴─────┴──────────┘
High-EUP Compiler(HE.EXE)及び386|High-EUP Compiler(HE386.EXP) ver.1.02
~2.01までは,EUPHONY 形式の演奏データを作成します。また,MML はHGPLAY/
EDPLAY 系の拡張で,F-BASIC386 やMUSIC PRO TOWNS が出力するMML と上位互換
性があります。
ver.3.01は,スタンダードMIDIファイルを作成します。ver.3.01は従来のMML
との互換性はまったくありません。
**************************************************************************
☆ 最後に,
**************************************************************************
HE386 ver.3.01のMML 仕様はHEatやそれ以前のHE/HE386 のものとはまったく異
なっており,互換性はまったくありません。
同じMML とはいっても,共通部分は音程を表すのに「A~G」を使うといったと
ころぐらいです。
HEatが音楽データの制作活動において(それなりに)使ってもらえたは,F-BASI
C386のMML やとMUSIC PRO TOWNS でMML セーブしたMML と互換性があったからです
が,これがMML 仕様上の最大の欠点でもありました。
従来のMML と互換性を維持するために,MML 仕様に統一性がなく,かなり面倒な
設定も必要でした。
内蔵音源や比較的小規模のMIDI用の演奏データを作る場合には,それでも問題な
かったのですが,GS音源の機能をフルに活用するMIDI用の演奏データを作成する場
合には従来のMML 仕様では限界に達してしまいました。
そうした背景から,HE386 ver.3 はHEatのMML との互換性は思い切って捨てて,
まったく新しいMML コンパイラとして設計しました。
HE386 ver.3 はGS音源を含めていかなるMIDI音源の機能も十二分に引き出せる性
能を持っています。
HE386 ver.3 のMML は一見複雑そうに見えますが,命令体系が整備されています
ので命令数はHEatのMML よりも少なくなっています。
HE386 ver.3 はプログラマブルという点を生かすように設計されています。
これは,いいほうに解釈すれば「柔軟性があり自由度が高い」となりますが,問
題があるとすれば「決まった書きかた,書式がない」ということになってしまいま
す。
つまり,同じことを実現するのも何通りもの指定方法があるので,自分にあった
MML の書きかたを見つけるまでが大変だと思います。
HE386 は既存のいかなる音楽ツールともコンセプトの異なる特殊な演奏データ作
成ツールです。
面倒臭い部分もありますが,既存のツールでは表現できない演奏データもらくら
くとこなしてしまう点もたくさんあります。
是非ともHE386 を使って演奏データを作ってみてください。
1993. 6.29 TaroPYON